home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / gtk-2.0 / gtk / gtkbutton.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-04-25  |  5.2 KB  |  138 lines

  1. /* GTK - The GIMP Toolkit
  2.  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  3.  *
  4.  * This library is free software; you can redistribute it and/or
  5.  * modify it under the terms of the GNU Lesser General Public
  6.  * License as published by the Free Software Foundation; either
  7.  * version 2 of the License, or (at your option) any later version.
  8.  *
  9.  * This library is distributed in the hope that it will be useful,
  10.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.  * Lesser General Public License for more details.
  13.  *
  14.  * You should have received a copy of the GNU Lesser General Public
  15.  * License along with this library; if not, write to the
  16.  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  17.  * Boston, MA 02111-1307, USA.
  18.  */
  19.  
  20. /*
  21.  * Modified by the GTK+ Team and others 1997-2001.  See the AUTHORS
  22.  * file for a list of people on the GTK+ Team.  See the ChangeLog
  23.  * files for a list of changes.  These files are distributed with
  24.  * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
  25.  */
  26.  
  27. #ifndef __GTK_BUTTON_H__
  28. #define __GTK_BUTTON_H__
  29.  
  30.  
  31. #include <gdk/gdk.h>
  32. #include <gtk/gtkbin.h>
  33. #include <gtk/gtkenums.h>
  34. #include <gtk/gtkimage.h>
  35.  
  36.  
  37. G_BEGIN_DECLS
  38.  
  39. #define GTK_TYPE_BUTTON                 (gtk_button_get_type ())
  40. #define GTK_BUTTON(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_BUTTON, GtkButton))
  41. #define GTK_BUTTON_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_BUTTON, GtkButtonClass))
  42. #define GTK_IS_BUTTON(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_BUTTON))
  43. #define GTK_IS_BUTTON_CLASS(klass)      (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_BUTTON))
  44. #define GTK_BUTTON_GET_CLASS(obj)       (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_BUTTON, GtkButtonClass))
  45.  
  46. typedef struct _GtkButton        GtkButton;
  47. typedef struct _GtkButtonClass   GtkButtonClass;
  48.  
  49. struct _GtkButton
  50. {
  51.   GtkBin bin;
  52.  
  53.   GdkWindow *event_window;
  54.  
  55.   gchar *label_text;
  56.  
  57.   guint activate_timeout;
  58.  
  59.   guint constructed : 1;
  60.   guint in_button : 1;
  61.   guint button_down : 1;
  62.   guint relief : 2;
  63.   guint use_underline : 1;
  64.   guint use_stock : 1;
  65.   guint depressed : 1;
  66.   guint depress_on_activate : 1;
  67.   guint focus_on_click : 1;
  68. };
  69.  
  70. struct _GtkButtonClass
  71. {
  72.   GtkBinClass        parent_class;
  73.   
  74.   void (* pressed)  (GtkButton *button);
  75.   void (* released) (GtkButton *button);
  76.   void (* clicked)  (GtkButton *button);
  77.   void (* enter)    (GtkButton *button);
  78.   void (* leave)    (GtkButton *button);
  79.   void (* activate) (GtkButton *button);
  80.   
  81.   /* Padding for future expansion */
  82.   void (*_gtk_reserved1) (void);
  83.   void (*_gtk_reserved2) (void);
  84.   void (*_gtk_reserved3) (void);
  85.   void (*_gtk_reserved4) (void);
  86. };
  87.  
  88.  
  89. GType          gtk_button_get_type          (void) G_GNUC_CONST;
  90. GtkWidget*     gtk_button_new               (void);
  91. GtkWidget*     gtk_button_new_with_label    (const gchar    *label);
  92. GtkWidget*     gtk_button_new_from_stock    (const gchar    *stock_id);
  93. GtkWidget*     gtk_button_new_with_mnemonic (const gchar    *label);
  94. void           gtk_button_pressed           (GtkButton      *button);
  95. void           gtk_button_released          (GtkButton      *button);
  96. void           gtk_button_clicked           (GtkButton      *button);
  97. void           gtk_button_enter             (GtkButton      *button);
  98. void           gtk_button_leave             (GtkButton      *button);
  99.  
  100. void                  gtk_button_set_relief         (GtkButton      *button,
  101.                              GtkReliefStyle  newstyle);
  102. GtkReliefStyle        gtk_button_get_relief         (GtkButton      *button);
  103. void                  gtk_button_set_label          (GtkButton      *button,
  104.                              const gchar    *label);
  105. G_CONST_RETURN gchar *gtk_button_get_label          (GtkButton      *button);
  106. void                  gtk_button_set_use_underline  (GtkButton      *button,
  107.                              gboolean        use_underline);
  108. gboolean              gtk_button_get_use_underline  (GtkButton      *button);
  109. void                  gtk_button_set_use_stock      (GtkButton      *button,
  110.                              gboolean        use_stock);
  111. gboolean              gtk_button_get_use_stock      (GtkButton      *button);
  112. void                  gtk_button_set_focus_on_click (GtkButton      *button,
  113.                              gboolean        focus_on_click);
  114. gboolean              gtk_button_get_focus_on_click (GtkButton      *button);
  115. void                  gtk_button_set_alignment      (GtkButton      *button,
  116.                              gfloat          xalign,
  117.                              gfloat          yalign);
  118. void                  gtk_button_get_alignment      (GtkButton      *button,
  119.                              gfloat         *xalign,
  120.                              gfloat         *yalign);
  121. void                  gtk_button_set_image          (GtkButton      *button,
  122.                                  GtkWidget      *image);
  123. GtkWidget*            gtk_button_get_image          (GtkButton      *button);
  124.  
  125.  
  126. void _gtk_button_set_depressed             (GtkButton     *button,
  127.                         gboolean       depressed);
  128. void _gtk_button_paint                     (GtkButton     *button,
  129.                         GdkRectangle  *area,
  130.                         GtkStateType   state_type,
  131.                         GtkShadowType  shadow_type,
  132.                         const gchar   *main_detail,
  133.                         const gchar   *default_detail);
  134.  
  135. G_END_DECLS
  136.  
  137. #endif /* __GTK_BUTTON_H__ */
  138.